package com.itjeffrey.autocode.websocket;

import javax.websocket.*;
import java.io.IOException;

/**
 * WebSocketServer接口
 */
public interface SocketServer {

    /**
     * 连接建立成功调用的方法
     */
    @OnOpen
    void onOpen(Session session);

    /**
     * 收到客户端消息后调用的方法
     * @param message 客户端发送过来的消息
     * */
    @OnMessage
    void onMessage(String message, Session session);

    /**
     * 发送消息
     * @param message
     * @throws IOException
     */
    void sendMessage(String message) throws IOException;

    /**
     * 错误处理
     *
     * @param session
     * @param error
     */
    @OnError
    void onError(Session session, Throwable error);

    /**
     * 连接关闭调用的方法
     */
    @OnClose
    void onClose();
}
